package linter.service;

// import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import linter.POJO.DO.User;
import linter.POJO.DTO.UserDTO;

import java.util.List;

/**
* @author 北煜
* @description 针对表【user(用户基础信息表)】的数据库操作Service
* @createDate 2023-07-05 20:10:15
*/
public interface UserService extends IService<User> {

    /**
     * @param username 用户名字
     * @return      返回用户DTO
     */
    UserDTO getUserByUsername(String username);

    /**
     * @param username 用户名
     * @param pwd       密码
     * @return      返回响应
     */
    String checkLogin(String username, String pwd);

    /**
     * @param username 用户名
     * @param pwd       密码
     * @return      返回注册结果
     */
    Long register(String username, String pwd);

    /**
     * @param id 用户组的主键ID
     * @return 返回 true or false
     */
    boolean removeAllById(Long id);

    /**
     * @param username 用户名
     * @return 返回查询到的ID
     */
    Long getIdByUsername(String username);

    String loginPh(String phoneNumber);

    Boolean selectPh(String phoneNumber);


    List<User> selectall(int pageNum, int pageSize,String username);

    /**
     * @param username 用户名
     * @return 返回用户角色
     */
    Integer getUserRole(String username);

    /**
     *
     * @param id 用户id
     * @return boolean
     */
    String ban(int id,int state);
}
